const util = require('../../utils/util.js');
Page({

  /**
   * 页面的初始数据
   */
  data: {
    // 选择器
    startDate: '', // 限制选择的起始日期
    formDate: '', // 到达日期
    peopleNum: '', // 人数
    lvList: ['二级巡视员', '一级巡视员'],
    lvIndex: '',// 人员最高级别
    ratioProg: 50, // 校内课程
    ratioProg_residue: 50, // 校外课程
    dayList: [{ 'num': 2, 'day': '3天以内' }, { 'num': 3, 'day': '3天' }, { 'num': 5, 'day': '5天' }, { 'num': 7, 'day': '7天' }, { 'num': 10, 'day': '10天' }],
    dayIndex: 0, // 行程天数
    dayNum: 0,
    typeList: [],
    typeIndex: 0,
    typeBillid: '', // 课程类型
    needValue: '', // 特殊需求
    unitName: '', // 单位名称
    jbrxm: '',//经办人姓名
    jbrlxdh: '',//经办人联系电话
    jbryx: '',//经办人邮箱
    systemInfo: wx.getWindowInfo(), // 设备窗口信息
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {// 获取当前日期
    const today = new Date();
    const year = today.getFullYear();
    const month = today.getMonth() + 1; // 月份从 0 开始，需要加 1
    const day = today.getDate();

    // 格式化日期为 YYYY-MM-DD
    const formattedDate = `${year}-${month < 10 ? '0' + month : month}-${day < 10 ? '0' + day : day}`;

    // 设置 startDate
    this.setData({
      startDate: formattedDate,
      formDate: formattedDate
    });
    this.getuserBmxx()
    this.getKclx()
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },
  // 课程占比调整
  startRatio(e) {
    let windosWidth = this.data.systemInfo.screenWidth, value = e.changedTouches[0].pageX - 20
    let info = Math.round(value / windosWidth * 100)
    info = info < 0 ? 0 : info > 100 ? 100 : info
    this.setData({
      ratioProg: info.toString(),
      ratioProg_residue: 100 - info
    })
  },
  // 特殊需求输入
  inputNeed(e) {
    this.setData({
      needValue: e.detail.value
    })
  },
  // 报名信息选择
  changeDay(e) {
    this.setData({
      dayIndex: e.currentTarget.dataset.index,
      dayValue: e.currentTarget.dataset.value
    })
  },
  changeType(e) {
    this.setData({
      typeBillid: e.currentTarget.dataset.billid,
      typeIndex: e.currentTarget.dataset.index
    })
  },
  changeLv(e) {
    this.setData({
      lvIndex: e.detail.value
    })
  },
  changePeople(e) {
    this.setData({
      peopleIndex: e.detail.value
    })
  },
  changeDate(e) {
    this.setData({
      formDate: e.detail.value
    })
  },
  // 提交表单
  submitForm(e) {
    let that = this;
    const { peopleNum, jbrlxdh, jbryx } = this.data;

    if (Number(peopleNum) < 1) return util.showMsg({ msg: "人数不能少于1人" });
    if (!util.validatePhoneNumber(jbrlxdh)) return util.showMsg({ msg: "联系电话格式错误" });
    if (!util.validateEmail(jbryx)) return util.showMsg({ msg: "邮箱格式错误" });
    util.request("/itf/common/bmxx/saveBmxx.json", {
      'ddrq': that.data.formDate,
      'rs': that.data.peopleNum,
      'ryzgjb': that.data.lvList[that.data.lvIndex],
      'xnzb': that.data.ratioProg,
      'xwzb': that.data.ratioProg_residue,
      'xcts': that.data.dayNum,
      'kclx_pk': that.data.typeBillid,
      'kclx': that.data.typeList[that.data.typeIndex].kclx,
      'tsxqsm': that.data.needValue,
      'dwmc': that.data.unitName,
      'jbrxm': that.data.jbrxm,
      'jbr_lxdh': that.data.jbrlxdh,
      'jbr_yx': that.data.jbryx
    })
      .then(res => {
        if (res.success) {
          util.showMsg({
            msg: res.message,
            icon: 'success',
            duration: 2000,
            success: () => {
              wx.switchTab({
                url: '/pages/ziyuandian/ziyuandian',
              })
            }
          });
        } else {
          util.showMsg({ msg: res.message || res.msg });
        }

      })
  },
  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  },
  /**
   * 获取当前登陆人的报名信息
   */
  getuserBmxx() {
    let that = this;
    util.request("/itf/common/bmxx/getUserJbr.json")
      .then(res => {
        if (res.success) {
          if (res.data) {
            that.setData({
              jbrxm: res.data.jbrxm,
              jbrlxdh: res.data.jbr_lxdh,
              jbryx: res.data.jbr_yx,
              unitName: res.data.dwmc
            });
          }
        } else {
          util.showMsg({ msg: res.message || res.msg });
        }
      })
  },
  //获取课程类型
  getKclx() {
    let that = this;
    util.request("/itf/common/bmxx/getKclx.json")
      .then(res => {
        if (res.success) {
          that.setData({
            typeList: res.data
          });
        } else {
          util.showMsg({ msg: res.message || res.msg });
        }
      })
  }
})